package com.hulk.dryad.activiti7.api.vo;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.ContentStyle;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.hulk.dryad.activiti7.api.BaseVO;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import lombok.experimental.Accessors;
import org.apache.poi.ss.usermodel.FillPatternType;

import java.time.LocalDate;

/**
 * 请假对象 workflow_leave
 * 
 * @author hulk
 * @date 2020-10-28
 */
@ApiModel(value = "请假信息")
@Data
@ToString(callSuper = true)
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)

@ColumnWidth(25)
@HeadRowHeight(20)
@ContentRowHeight(18)
public class WorkflowLeaveVO  extends BaseVO
{
    private static final long serialVersionUID = 1L;

    /** 主键ID */
	@ExcelIgnore
    private String id;



    /** 标题 */
	@ContentStyle(fillPatternType = FillPatternType.SOLID_FOREGROUND, fillForegroundColor = 40)
	@ColumnWidth(20)
	@ExcelProperty( value = "标题" ,order = 0)
    private String title;

    /** 原因 */
	@ColumnWidth(50)
	@ExcelProperty("原因")
    private String reason;

	/** 请假类型 */
	@ColumnWidth(20)
	@ExcelProperty("请假类型")
	private String type;

    /** 开始时间 */
	@ColumnWidth(10)
	@ExcelProperty(value = "开始时间" )
//	@DateTimeFormat( "yyyy-MM-dd")
//	@JsonFormat(pattern="yyyy-MM-dd")
    private LocalDate leaveStartTime;

    /** 结束时间 */
	@ColumnWidth(10)
	@ExcelProperty( value = "结束时间")
//	@DateTimeFormat("yyyy-MM-dd")
//	@JsonFormat(pattern="yyyy-MM-dd")
    private LocalDate leaveEndTime;

	/** 状态 */
	@ColumnWidth(8)
	@ExcelProperty("状态")
	private String state;

	/** 创建人 */
	@ColumnWidth(32)
	@ExcelProperty("创建人")
	private String createdName;

	@ColumnWidth(32)
	@ExcelProperty("创建人")
    private String instanceId;
	@ExcelIgnore
    private String taskName;


	/**
	 * 搜索值
	 */
	@ExcelIgnore
	private String searchValue;

	/**
	 * 创建者
	 */
	@ExcelIgnore
	private String createdBy;

	/**
	 * 创建时间
	 */
	//@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@ExcelIgnore
	private LocalDate createdTime;

	/**
	 * 更新者
	 */
	@ExcelIgnore
	private String updatedBy;

	/**
	 * 更新时间
	 */
	//@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@ExcelIgnore
	private LocalDate updatedTime;

	/**
	 * 备注
	 */
	@ExcelIgnore
	private String remark;

	/**
	 * 开始时间
	 */
	@JsonIgnore
	@ExcelIgnore
	private String beginTime;

	/**
	 * 结束时间
	 */
	@JsonIgnore
	@ExcelIgnore
	private String endTime;

}
